'\" te
.\"  Copyright 1989 AT&T
.\" Copyright (C) 2001, Sun Microsystems, Inc. All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH IN.RWHOD 8 "Dec 8, 2001"
.SH NAME
in.rwhod, rwhod \- system status server
.SH SYNOPSIS
.LP
.nf
\fB/usr/sbin/in.rwhod\fR [\fB-m\fR [\fIttl\fR]]
.fi

.SH DESCRIPTION
.sp
.LP
\fBin.rwhod\fR is the server which maintains the database used by the
\fBrwho\fR(1) and \fBruptime\fR(1) programs.  Its operation is predicated on
the ability to broadcast or multicast messages on a network.
.sp
.LP
\fBin.rwhod\fR operates as both a producer and consumer of status information.
As a producer of information it periodically queries the state of the system
and constructs status messages which are broadcast or multicast on a network.
As a consumer of information, it listens for other \fBin.rwhod\fR servers'
status messages, validating them, then recording them in a collection of files
located in the directory \fB/var/spool/rwho\fR.
.sp
.LP
The \fBrwho\fR server transmits and receives messages at the port indicated in
the \fBrwho\fR service specification, see \fBservices\fR(5). The messages sent
and received are defined in \fB/usr/include/protocols/rwhod.h\fR and are of the
form:
.sp
.in +2
.nf
struct  outmp {
        char     out_line[8];   /* tty name */
        char     out_name[8];   /* user id */
        long     out_time;      /* time on */
};
struct  whod {
        char     wd_vers;
        char     wd_type;
        char     wd_fill[2];
        int      wd_sendtime;
        int      wd_recvtime;
        char     wd_hostname[32];
        int      wd_loadav[3];
        int      wd_boottime;
        struct   whoent {
                 struct   outmp we_utmp;
                 int      we_idle;
     } wd_we[1024 / sizeof (struct whoent)];
 };
.fi
.in -2
.sp

.sp
.LP
All fields are converted to network byte order prior to transmission.  The load
averages are as calculated by the \fBw\fR(1) program, and represent load
averages over the 1, 5, and 15 minute intervals prior to a server's
transmission.  The host name included is that returned by the \fBuname\fR(2)
system call. The array at the end of the message contains information about the
users who are logged in to the sending machine.  This information includes the
contents of the \fButmpx\fR(5) entry for each non-idle terminal line and a
value indicating the time since a character was last received on the terminal
line.
.sp
.LP
Messages received by the \fBrwho\fR server are discarded unless they originated
at a \fBrwho\fR server's port.  In addition, if the host's name, as specified
in the message, contains any unprintable \fBASCII\fR characters, the message is
discarded. Valid messages received by \fBin.rwhod\fR are placed in files named
\fBwhod.\fR\fBhostname\fR in the directory \fB/var/spool/rwho\fR. These files
contain only the most recent message, in the format described above.
.sp
.LP
Status messages are generated approximately once every 3 minutes.
.SH OPTIONS
.sp
.LP
The following options are supported:
.sp
.ne 2
.na
\fB\fB\fR\fB-m\fR\fB \fR[\fI ttl \fR]\fR
.ad
.RS 14n
Use the rwho  \fBIP\fR multicast address (224.0.1.3) when transmitting. Receive
announcements both on this multicast address and on the  \fBIP\fR broadcast
address. If  \fIttl\fR is not specified  \fBin.rwhod\fR multicasts on all
interfaces but with the  \fBIP\fR TimeToLive set to 1 (that is, packets are not
forwarded by multicast routers.) If  \fIttl\fR is specified  \fBin.rwhod\fR
only transmits packets on one interface and setting the  \fBIP\fR TimeToLive to
the specified  \fIttl\fR.
.RE

.SH FILES
.sp
.ne 2
.na
\fB\fB/var/spool/rwho/whod.*\fR\fR
.ad
.RS 26n
information about other machines
.RE

.SH SEE ALSO
.sp
.LP
.BR ruptime (1),
.BR rwho (1),
.BR w (1),
.BR uname (2),
.BR services (5),
.BR utmpx (5),
.BR attributes (7)
.SH WARNINGS
.sp
.LP
This service can cause network performance problems when used by several hosts
on the network. It is not run at most sites by default. If used, include the
\fB-m\fR multicast option.
.SH NOTES
.sp
.LP
This service takes up progressively more network bandwidth as the number of
hosts on the local net increases.  For large networks, the cost becomes
prohibitive.
.sp
.LP
\fBin.rwhod\fR should relay status information between networks. People often
interpret the server dying as a machine going down.
